package main

import "fmt"

/*
	Go 语言的内建函数 append()可以为切片动态增加元素，每个切片会指向一个底层数组，
*/
func main() {
	//1、append方法的使用
	//var sliceA []int
	//fmt.Printf("值：%v-长度：%v-容量：%v\n", sliceA, len(sliceA), cap(sliceA)) //值：[]-长度：0-容量：0
	//sliceA = append(sliceA, 12, 33, 123, 55, 677)
	//fmt.Printf("值：%v-长度：%v-容量：%v\n", sliceA, len(sliceA), cap(sliceA)) //值：[12 33 123 55 677]-长度：5-容量：6

	//2、append方法还可以合并切片
	//sliceA := []string{"php", "java"}
	//sliceB := []string{"nodejs", "go"}

	//sliceA = append(sliceA, sliceB...)
	//fmt.Println(sliceA) //[php java nodejs go]

	//3、切片的扩容策略
	var sliceA []int
	for i := 1; i < 10; i++ {
		sliceA = append(sliceA, i)
		fmt.Printf("值：%v，长度：%v，容量：%v\n", sliceA, len(sliceA), cap(sliceA))
	}
}
